<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title></title>
	</head>
	<body>
		1. HTML行内元素有哪些, 块级元素有哪些?画出CSS盒模型
		块状：* <ol>        
			* <ul> 
			* <dl> 
			* <table>
			* <h1>...<h6> 
			* <p> 
			* <blockquote> 
			* <dt> 
			* <address>
			* <caption> 
			* <div>
			内联（行内）：

		* a - 锚点
		　　* abbr - 缩写
		　　* acronym - 首字
		　　* b - 粗体(不推荐)
		　　* bdo - bidi override
		　　* big - 大字体
		　　* br - 换行
		　　* cite - 引用
		　　* code - 计算机代码(在引用源码的时候需要)
		　　* dfn - 定义字段
		　　* em - 强调
		　　* font - 字体设定(不推荐)
		　　* i - 斜体
		　　* img - 图片
		　　* input - 输入框
		　　* kbd - 定义键盘文本
		　　* label - 表格标签
		　　* q - 短引用
		　　* s - 中划线(不推荐)
		　　* samp - 定义范例计算机代码
		　　* select - 项目选择
		　　* small - 小字体文本
		　　* span - 常用内联容器，定义文本内区块
		　　* strike - 中划线
		　　* strong - 粗体强调
		　　* sub - 下标
		　　* sup - 上标
		　　* textarea - 多行文本输入框
		　　* tt - 电传文本
		　　* u - 下划线
		　　* var - 定义变量	
		
			<img src="D5D79731-BF49-4A58-8DCE-2C294E151F24.png"/>
		CSS选择符有哪些?哪些属性可以继承?优先级算法如何计算?内联和important哪个优先级高?
		答：通配选择符* { sRules } 
 
			类型选择符E { sRules }  
			td { font-size:14px; width:120px; } 
			  
			属性选择符 
			E [ attr ] { sRules } 
			E [ attr = value ] { sRules } 
			E [ attr ~= value ] { sRules } 
			E [ attr |= value ] { sRules }  
			h[title] { color: blue; }/* 所有具有title属性的h对象*/ 
			span[class=demo] { color: red; }  
			div[speed="fast"][dorun="no"] { color: red; } 
			a[rel~="copyright"] { color:black; } 
			
			 
			包含选择符E1 E2 { sRules } 
			table td { font-size:14px; } 
			
			 
			子对象选择符E1 > E2 { sRules } 
			div ul>li p { font-size:14px; } 
			
			 
			ID选择符 #ID { sRules } 
			 
			类选择符 E.className { sRules } 
			 
			选择符分组  
			E1 , E2 , E3 { sRules } 
			  
			伪类及伪对象选择符  
			E : Pseudo-Classes { sRules }  
			( Pseudo-Classes )[:link :hover :active :visited :focus :first-child :first :left :right :lang] 
			E : Pseudo-Elements { sRules }  
			( Pseudo-Elements )[:first-letter :first-line :before :after] 
			可以继承的有：
			font-size font-family color  
			不可继承的一般有：
			border padding margin background-color width height 等
			
			
			
			关于CSS specificity  
			CSS 的specificity 
			特性或称非凡性，它是衡量一个衡量CSS值优先级的一个标准，既然作为标准，就具有一套相关的判定规定及计算方式，
			specificity用一个四位的数 字串(CSS2是三位)来表示，更像四个级别，值从左到右，左面的最大，一级大于一级，数位之间没有进制，级别之间不可超越。
			在多个选择符应用于同一个元素上那么Specificity值高的最终获得优先级。
			选择符Specificity值列表：  
			规则：  
			1. 行内样式优先级Specificity值为1,0,0,0，高于外部定义。 如：<div style=”color: red”>sjweb</div> 外部定义指经由<link>或<style>标签定义的规则； 
			2.!important声明的Specificity值最高；  
			3.Specificity值一样的情况下，按CSS代码中出现的顺序决定，后者CSS样式居上；  
			4.由继续而得到的样式没有specificity的计算，它低于一切其他规则(比如全局选择符*定义的规则)。 
			
			 算法：  
			当遇到多个选择符同时出现时候 按选择符得到的Specificity值逐位相加，  {数位之间没有进制 比如说： 0,0,0,5 + 0,0,0,5 =0,0,0,10 而不是 0,0, 1, 0} 就得到最终计算得的specificity，  然后在比较取舍时按照从左到右的顺序逐位比较。
			   
			实例分析：  
			1.div { font-size:12px;} 分析：  1个元素{ div}，Specificity值为0,0,0,1   
			2.body div p{color: green;} 分析：  3个元素{ body div p }，Specificity值为0,0,0,3   
			3.div .sjweb{ font-size:12px;} 分析：  1个元素{ div }，Specificity值为0,0,0,1 1个类选择符{.sjweb}，Specificity值为0,0,1, 0 最终：Specificity值为 0,0,1,1   
			4.Div # sjweb { font-size:12px;} 分析：  1个元素{ div }，Specificity值为0,0,0,1 1个类选择符{.sjweb}，Specificity值为0,1,0, 0 最终：Specificity值为 0,1,0,1   
			5.html > body div [id=”totals”] ul li > p {color:red;} 分析：  6个元素{ html body div ul li p}  Specificity值为0,0,0,6
			1个属性选择符{ [id=”totals”] }      Specificity值为0,0,1,0 2个其他选择符{ >  > }            Specificity值为0,0,0,0 最终：Specificity值为 0,0,1,6  
			 !important 的优先级最高 
			
			使用!important可以改变优先级别为最高，其次是style对象，然后是id > class >tag ，另外在同级样式按照申明的顺序后出现的样式具有高优先级。


		
		清除浮动的几种方式, 各自的优缺点?
		答：一、使用空标签清除浮动

			　　我用了很久的一种方法，空标签可以是div标签，也可以是P标签。我习惯用<div>，够简短，也有很多人用<hr>，只是需要另外为其清除边框，但理论上可以是任何标签。这种方式是在需要清除浮动的父级元素内部的所有浮动元素后添加这样一个标签清楚浮动，并为其定义CSS代码：clear:both。此方法的弊端在于增加了无意义的结构元素。<style type=”text/css”><!–    *{margin:0;padding:0;}    body{font:36px bold; color:#F00; text-align:center;}    #layout{background:#FF9;}    #left{float:left;width:20%;height:200px;background:#DDD;line-height:200px;}    #right{float:right;width:30%;height:80px;background:#DDD;line-height:80px;}    .clr{clear:both;}–></style><div id=”layout”>    <div id=”left”>Left</div>    <div id=”right”>Right</div>    <div class=”clr”></div></div>
			
			二、使用overflow属性
			
			　　此方法有效地解决了通过空标签元素清除浮动而不得不增加无意代码的弊端。使用该方法是只需在需要清除浮动的元素中定义CSS属性：overflow:auto，即可！”zoom:1″用于兼容IE6。
			
			
			三、使用after伪对象清楚浮动
			
			　　该方法只适用于非IE浏览器。具体写法可参照以下示例。使用中需注意以下几点。一、该方法中必须为需要清除浮动元素的伪对象中设置height:0，否则该元素会比实际高出若干像素；二、content属性是必须的，但其值可以为空，蓝色理想讨论该方法的时候content属性的值设为”.”，但我发现为空亦是可以的。

		
		 HTML5存储类型有哪些?
		答：session级别的sessionStorage,只在当前域名内才有效，当浏览器窗口关闭，存入的值跟着也消失，它提供三个方法getItem("key")\setItem(key,value)\removeItem(key);
			cookie级别的localStorage，永久存在浏览器中，方法跟sessionStorage一样
		
		 HTTP状态吗有哪些, 分别代表什么意思?(几个常用的就行, 不用全说)
		答：成功2××          成功处理了请求的状态码。
			200                   服务器已成功处理了请求并提供了请求的网页。
			204                   服务器成功处理了请求，但没有返回任何内容。                         
			重定向3××       每次请求中使用重定向不要超过 5 次。
			301                   请求的网页已永久移动到新位置。当URLs发生变化时，使用301代码。搜索引擎索引中保存新的URL。
			302                   请求的网页临时移动到新位置。搜索引擎索引中保存原来的URL。
			304                   如果网页自请求者上次请求后没有更新，则用304代码告诉搜索引擎机器人，可节省带宽和开销。
			客户端错误4××  表示请求可能出错，妨碍了服务器的处理。
			400                    服务器不理解请求的语法。
			403                    服务器拒绝请求。
			404                    服务器找不到请求的网页。服务器上不存在的网页经常会返回此代码。
			410                    请求的资源永久删除后，服务器返回此响应。该代码与 404（未找到）代码相似，但在资源以前存在而现在不存在的情况下，有时用来替代404 代码。如果资源已永久删除，应当使用 301 指定资源的新位置。
			服务器错误5××   表示服务器在处理请求时发生内部错误。这些错误可能是服务器本身的错误，而不是请求出错。
			500                     服务器遇到错误，无法完成请求。
			503                     服务器目前无法使用（由于超载或停机维护）。通常，这只是暂时状态。     
		
	</body>
</html>
